From 7685cc708e8e4986249c1c98aff2740de11dba48 Mon Sep 17 00:00:00 2001 From: Alex Williamson Date: Mon, 17 Sep 2007 11:30:51 -0600 Subject: [PATCH] [IA64] Fill more registers for vcpu_getcontext Signed-off-by: Tristan Gingold --- xen/arch/ia64/xen/domain.c | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/xen/arch/ia64/xen/domain.c b/xen/arch/ia64/xen/domain.c index b9f0cfcfaa..95e9210cbe 100644 --- a/xen/arch/ia64/xen/domain.c +++ b/xen/arch/ia64/xen/domain.c @@ -733,8 +733,27 @@ void arch_get_info_guest(struct vcpu *v, vcpu_guest_context_u c) if (!v->domain->arch.is_vti && v->arch.privregs == NULL) return; - vcpu_get_dcr (v, &c.nat->regs.cr.dcr); - vcpu_get_iva (v, &c.nat->regs.cr.iva); + vcpu_get_dcr(v, &c.nat->regs.cr.dcr); + + c.nat->regs.cr.itm = v->domain->arch.is_vti ? + vmx_vcpu_get_itm(v) : PSCBX(v, domain_itm); + vcpu_get_iva(v, &c.nat->regs.cr.iva); + vcpu_get_pta(v, &c.nat->regs.cr.pta); + + vcpu_get_ipsr(v, &c.nat->regs.cr.ipsr); + vcpu_get_isr(v, &c.nat->regs.cr.isr); + vcpu_get_iip(v, &c.nat->regs.cr.iip); + vcpu_get_ifa(v, &c.nat->regs.cr.ifa); + vcpu_get_ivr(v, &c.nat->regs.cr.ivr); + + vcpu_get_tpr(v, &c.nat->regs.cr.tpr); + vcpu_get_irr0(v, &c.nat->regs.cr.irr[0]); + vcpu_get_irr1(v, &c.nat->regs.cr.irr[1]); + vcpu_get_irr2(v, &c.nat->regs.cr.irr[2]); + vcpu_get_irr3(v, &c.nat->regs.cr.irr[3]); + vcpu_get_itv(v, &c.nat->regs.cr.itv); + vcpu_get_pmv(v, &c.nat->regs.cr.pmv); + vcpu_get_cmcv(v, &c.nat->regs.cr.cmcv); } int arch_set_info_guest(struct vcpu *v, vcpu_guest_context_u c) -- 2.30.2